package com.ceres.device.service.impl;

import com.ceres.device.dao.InfoMapper;
import com.ceres.device.entity.QueryPageBean;
import com.ceres.device.pojo.Device;
import com.ceres.device.pojo.Info;
import com.ceres.device.service.InfoService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 *  设备说明书的业务层
 */
@Service
public class InfoServiceImpl implements InfoService {

    @Autowired
    private InfoMapper infoMapper;

    /**
     *  根据Id 的进行修改
     */
    public void update(Info info) {
        if (info!=null){
            /**
             *  根据实体的id 进行修改
             */
            int i = infoMapper.updateByPrimaryKey(info);
            if (i==0){
                throw new RuntimeException("管理员和技术员进行修改失败");
            }
        }else {
            throw new RuntimeException("管理员和技术员进行修改的设备不存在");
        }
    }

    /**
     *    分页查询+ 根据设备名称或者编码进行查询
     * @param queryPageBean
     * @return
     */
    public Page<Info> InfoFindPage(QueryPageBean queryPageBean) {
        /**
         *   当前页
         */
        Integer currentPage = queryPageBean.getCurrentPage();
        /**
         *   当前页显示的条数
         */
        Integer pageSize = queryPageBean.getPageSize();
        /**
         *   条件查询
         */
        String queryString = queryPageBean.getQueryString();
        /**
         *   进行分页
         */
        PageHelper.startPage(currentPage,pageSize);
        /**
         *   返回page
         */
        Page<Info> infos = infoMapper.select6all(queryString);
        return infos;
    }
}
